FALCON REGISTERS 2 HOW to access the play/record-frame: You have to set bit 7 of $8901.w to select play- or record-shadowregister, then access the frame-begin/end-registers! The play- and record-shadow- register are two seperate registers; they appear only at the same addresses! $FFFF8920 [R/W] :$00 __54__10 ........................... Track-Play-Control || || || 00---- play 1 track || 01---- play 2 tracks || 10---- play 3 tracks || 11---- play 4 tracks 00 ------- connect track 1 with speaker 01 ------- connect track 2 with speaker 10 ------- connect track 3 with speaker 11 ------- connect track 4 with speaker $FFFF8921 [R/W] :$03 76____10 ........................... Sound-Mode-Control || || || 00---- nute condition (on STE: 6258 Hz) || 01---- 12517 HZ || 10---- 25033 HZ || 11---- 50066 HZ |+---------- 0: 8 Bit | 1: 16 Bit +----------- 0: Stereo 1: Mono Nice to know: The samplerate 6258 Hz was repleaced by a nute condition. You can use it to deactivate the DMA-Transfer. $FFFF8922 [R/-] :$00 not accessed by the XBIOS. $FFFF8923 [R/-] :$00 The FALCON has no $FFFF8924 [R/-] :$00 Microwire- $FFFF8925 [R/-] :$00 Interface!! $FFFF8930 [R/W] :$01 76543210 ......... Sound-Source-Device-Prescale-Mode Hi |||||||| |||||||| Source-Device: EXT-INP |||||||+---- 1: Handshaking off |||||++----- Source-Clock ||||+------- set to zero |||| |||| Source-Device: A/D-Converter |||+-------- set to zero ||+--------- 0: internal 25.175 MHz-Clock || 1: extermal Clock ++---------- set to zero $FFFF8931 [R/W] :$11 76543210 ......... Sound-Source-Device-Prescale-Mode Lo |||||||| |||||||| Source-Device: DMA-PLAY |||||||+---- 1: Handshaking off |||||++----- Source-Clock ||||+------- 0: if handshaking on and destination= |||| DSP-REC |||| 1: if destination<>DSP-REC |||| (this allows a automatic transfer from |||| (memory to DSP without errors.) |||| |||| Source-Device: DSP-XMIT |||+-------- 1: Handshaking off |++--------- Source-Clock +----------- 0: Tristate, disconnect DSP from Multi- plexer (only if you want to use the external SSI-Port) 1: connect DSP with Multiplexer Source-Clock can be : %00: internal 25.175 MHz-Clock %01: external Clock %10: intermal 32 MHz-Clock,do not use it for the CODEC (A/D- and D/A-Converter). %11: not defined $FFFF8932 [R/W] :$00 76543210 ........... Sound-Destination-Device-Matrix Hi |||||||| |||||||| Source-Device for destination: EXT-OUT |||||||+---- 1: Handshaking off |||||++----- Source-Device ||||+------- set to zero |||| |||| Source-Device for destination: DAC |||+-------- set to zero |++--------- Source-Device +----------- set to zero $FFFF8933 [R/W] :$00 76543210 ........... Sound-Destination-Device-Matrix Lo |||||||| |||||||| Source-Device for destination: DMA-REC |||||||+---- 1: Handshaking off |||||++----- Source-Device ||||+------- 0: if handshaking on and source=DSP-XMIT |||| 1: if source<>DSP-XMIT |||| (this modus allows a automatic transfer |||| from DSP to memory without errors.) |||| |||| Source-Device for destination: DSP-REC |||+-------- 1: Handshaking off |++--------- Source-Device +----------- 0: Tristate, disconnect DSP from Multi- plexer (only if you want to use the external SSI-Port) 1: connect DSP with Multiplexer Source-Device can be: %00: DMA-PLAY %01: DSP-XMIT (DSP send data) %10: EXT-INP (External Input) %11: A/D-Converter $FFFF8934 [R/W] :$00 ____3210 ...................... Prescale external Clock |||| ++++---- 0: switch to STE-compatible mode 1-15: Clock devided by 256, devided by prescalevalue+1. Documentation only allows values between 0 and 15, but the XBIOS allows values between 0 and 255. The upper nibble is cut by the hardware. $FFFF8935 [R/W] :$01 ____3210 ... Prescale internal Clock (25.175 or 32 MHz) |||| ++++---- look above! According to the |||| Documentation you can only use the |||| following values for the CODEC(A/D- and |||| D/A-Converter): 0,1,2,3,4,5,7,9,11 0000---- switch to STE-compatible mode 0001---- CLK50K 49170 Hz 0010---- CLK33K 32780 Hz 0011---- CLK25K 24585 Hz 0100---- CLK20K 19668 Hz 0101---- CLK16K 16390 Hz 0110---- CLK14K 14049 Hz (invalid for CODEC) 0111---- CLK12K 12292 Hz 1000---- CLK11K 10927 Hz (invalid for CODEC) 1001---- CLK10K 9834 Hz 1010---- CLK09K 8940 Hz (invalid for CODEC) 1011---- CLK08K 8195 Hz 1100---- CLK07K 7565 Hz (invalid for CODEC) 1101---- CLK07K 7024 Hz (invalid for CODEC) 1110---- CLK06K 6556 Hz (invalid for CODEC) 1111---- CLK06K 6146 HZ (invalid for CODEC) $FFFF8936 [R/W] :$00 ______10 ......................... Track-Record-Control || 00---- record 1 track 01---- record 2 tracks 10---- record 3 tracks 11---- record 4 tracks $FFFF8937 [R/W] :$03 ______10 .................... CODEC-Hardwareadder-Input || (ADDRIN-register) || Source-input of the 16-bit-hardwareadder || |+---- 1: input from A/D-Converter +----- 1: input from Multiplexer NOTE: The CODEC-Hardwareadder-Input connects the D/A-Converter with the multiplexer or the A/D-Converter. It is also possible to connect both. In this case the 16-bit-Hardwareadder mix the two signals. $FFFF8938 [R/W] :$03 ______10 .......................... A/D-Converter-Input || (ADCINPUT-register) |+---- 0: input from right mic-channel | 1: input from right PSG-channel +----- 0: input from left mic-channel 1: input from left PSG-channel $FFFF8939 [R/W] :$88 76543210 ..... Channel-Input-Amplifier in +1.5 dB steps |||||||| (GAIN-register) |||||||| ||||++++---- 0-15: Gain right channel (RTGAIN) ++++-------- 0-15: Gain of left channel (LTGAIN) $FFFF893A [R/W] :$07 ____3210 . Channel-Output-Amplifier in -1.5 dB-steps Hi |||| (ATTEN-register) |||| ++++---- 0-15: Attenuation of feft channal(LTATTEN) $FFFF893B [R/W] :$70 7654____ ........................................... Lo |||| ++++------- 0-15: Attenuation of right channel(RTATTEN) $FFFF893C [R/W] :$64 ______10 .............................. CODEC-Status Hi || |+---- 1: right channel-overflow +----- 1: left channel-overflow $FFFF893D [R/W] :$00 7654____ .............................. CODEC-Status Lo |||| |||+------ ? ||+------- ? |+-------- ? +--------- ? $FFFF893E [R/W] :$81 not accessed $FFFF893F [R/W] :$00 by the XBIOS $FFFF8940 [R/W] :$00 <===== Hi $FFFF8941 [R/W] :$00 _____210 ..............................GPx-Dataportpath ||| +++---- bidirectional Dataportpath of the GP0- GP2-Pins on the DSP-Connector 0: Pin set to Input (read data from GPx) 1: Pin set to Output (write data to GPx) (normally %111) $FFFF8942 [R/W] :$00 <===== Hi $FFFF8943 [R/W] :$07 _____210 ................................. GPx-Dataport ||| +++---- Input/Output-Data-Bits of the GP0-GP2-Pins on the DSP-Connector. This Pins can be used for userdef. operations. **************************************************************************** C L O C K - C H I P ( T T ) **************************************************************************** $FFFF8960 [R/W] :$DF ****** $FFFF8961 [R/W] :$FF Register Selection $FFFF8962 [R/W] :$DF ****** $FFFF8963 [R/W] :$FF Data **************************************************************************** B L I T T E R ( S T E ) **************************************************************************** $FFFF8A00 [R/W] :$FF Halftone RAM $00 Hi $FFFF8A01 [R/W] :$FF Lo $FFFF8A02 [R/W] :$FF Halftone RAM $01 Hi $FFFF8A03 [R/W] :$FF Lo $FFFF8A04 [R/W] :$FF Halftone RAM $02 Hi $FFFF8A05 [R/W] :$FF Lo $FFFF8A06 [R/W] :$FF Halftone RAM $03 Hi $FFFF8A07 [R/W] :$FF Lo $FFFF8A08 [R/W] :$FF Halftone RAM $04 Hi $FFFF8A09 [R/W] :$FF Lo $FFFF8A0A [R/W] :$FF Halftone RAM $05 Hi $FFFF8A0B [R/W] :$FF Lo $FFFF8A0C [R/W] :$FF Halftone RAM $06 Hi $FFFF8A0D [R/W] :$FF Lo $FFFF8A0E [R/W] :$FF Halftone RAM $07 Hi $FFFF8A0F [R/W] :$FF Lo $FFFF8A10 [R/W] :$FF Halftone RAM $08 Hi $FFFF8A11 [R/W] :$FF Lo $FFFF8A12 [R/W] :$FF Halftone RAM $09 Hi $FFFF8A13 [R/W] :$FF Lo $FFFF8A14 [R/W] :$FF Halftone RAM $0A Hi $FFFF8A15 [R/W] :$FF Lo $FFFF8A16 [R/W] :$FF Halftone RAM $0B Hi $FFFF8A17 [R/W] :$FF Lo $FFFF8A18 [R/W] :$FF Halftone RAM $0C Hi $FFFF8A19 [R/W] :$FF Lo $FFFF8A1A [R/W] :$FF Halftone RAM $0D Hi $FFFF8A1B [R/W] :$FF Lo $FFFF8A1C [R/W] :$FF Halftone RAM $0E Hi $FFFF8A1D [R/W] :$FF Lo $FFFF8A1E [R/W] :$FF Halftone RAM $0F Hi $FFFF8A1F [R/W] :$FF Lo $FFFF8A20 [R/W] :$00 Source-X-Increment Hi $FFFF8A21 [R/W] :$00 Lo $FFFF8A22 [R/W] :$FF Source-Y-Increment Hi $FFFF8A23 [R/W] :$00 Lo $FFFF8A24 [R/W] :$00 ****** $FFFF8A25 [R/W] :$E4 Source-Address Hi $FFFF8A26 [R/W] :$89 Mi $FFFF8A27 [R/W] :$6C Lo $FFFF8A28 [R/W] :$FF End-Mask 1 Hi $FFFF8A29 [R/W] :$FF Lo $FFFF8A2A [R/W] :$FF End-Mask 2 Hi $FFFF8A2B [R/W] :$FF Lo $FFFF8A2C [R/W] :$FF End-Mask 3 Hi $FFFF8A2D [R/W] :$FF Lo $FFFF8A2E [R/W] :$00 Destination-X-Increment Hi $FFFF8A2F [R/W] :$04 Lo $FFFF8A30 [R/W] :$00 Destination-Y-Increment Hi $FFFF8A31 [R/W] :$54 Lo $FFFF8A32 [R/W] :$00 ****** $FFFF8A33 [R/W] :$3F Destination-Address Hi $FFFF8A34 [R/W] :$FD Mi $FFFF8A35 [R/W] :$EA Lo $FFFF8A36 [R/W] :$00 X-Count Hi $FFFF8A37 [R/W] :$14 Lo $FFFF8A38 [R/W] :$00 Y-Count Hi $FFFF8A39 [R/W] :$00 Lo $FFFF8A3A [R/W] :$01 Halftone-Operation $FFFF8A3B [R/W] :$03 Logic-Operation $FFFF8A3C [R/W] :$06 Line-Number $FFFF8A3D [R/W] :$00 Skew $FFFF8A3E [R/W] :$FF ****** $FFFF8A3F [R/W] :$FF ****** **************************************************************************** S E R I A L - C O M M U N I C A T I O N S - C O N T R O L L E R ( T T ) **************************************************************************** $FFFF8C80 [R/W] :$9F ****** $FFFF8C81 [R/W] :$EC Register Selection Channel A $FFFF8C82 [R/W] :$FF ****** $FFFF8C83 [R/W] :$FF Read / Write Data Channel A $FFFF8C84 [R/W] :$8F ****** $FFFF8C85 [R/W] :$44 Register Selection Channel B $FFFF8C86 [R/W] :$FF ****** $FFFF8C87 [R/W] :$FF Read / Write Data Channel B **************************************************************************** J O Y S T I C K / L I G H T P E N - P O R T S ( S T E ) **************************************************************************** $FFFF9200 [R/W] :$BF Fire-Buttons 1-4 Hi $FFFF9201 [R/W] :$FF Lo $FFFF9202 [R/W] :$FF Joysticks 1-4 Hi $FFFF9203 [R/W] :$FF Lo $FFFF9210 [R/W] :$8F Position Paddle 0 Hi $FFFF9211 [R/W] :$FF Lo $FFFF9212 [R/W] :$8F Position Paddle 1 Hi $FFFF9213 [R/W] :$FF Lo $FFFF9214 [R/W] :$8F Position Paddle 2 Hi $FFFF9215 [R/W] :$FF Lo $FFFF9216 [R/W] :$8F Position Paddle 3 Hi $FFFF9217 [R/W] :$FF Lo $FFFF9220 [R/W] :$00 Lightpen X-Position Hi $FFFF9221 [R/W] :$00 Lo $FFFF9222 [R/W] :$00 Lightpen Y-Position Hi $FFFF9223 [R/W] :$00 Lo